[INFO] cloning repository https://github.com/lochuhsin/crafting_intepreter
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/lochuhsin/crafting_intepreter" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flochuhsin%2Fcrafting_intepreter", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flochuhsin%2Fcrafting_intepreter'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] c4560b14ff923d052b5bbad350e5484e8bb0cbf6
[INFO] testing lochuhsin/crafting_intepreter against master#1f7f8ea0721a3b1eb73e6c6d25cccb371434b320 for pr-154065-1
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Flochuhsin%2Fcrafting_intepreter" "/workspace/builds/worker-7-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-7-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/lochuhsin/crafting_intepreter
[INFO] finished tweaking git repo https://github.com/lochuhsin/crafting_intepreter
[INFO] tweaked toml for git repo https://github.com/lochuhsin/crafting_intepreter written to /workspace/builds/worker-7-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/lochuhsin/crafting_intepreter on toolchain 1f7f8ea0721a3b1eb73e6c6d25cccb371434b320
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/lochuhsin/crafting_intepreter already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] e70829aff894a2e62e0f5788d37997f8869e352b2ea68175122e11fc1e5b9a11
[INFO] running `Command { std: "docker" "start" "-a" "e70829aff894a2e62e0f5788d37997f8869e352b2ea68175122e11fc1e5b9a11", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "e70829aff894a2e62e0f5788d37997f8869e352b2ea68175122e11fc1e5b9a11", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "e70829aff894a2e62e0f5788d37997f8869e352b2ea68175122e11fc1e5b9a11", kill_on_drop: false }`
[INFO] [stdout] e70829aff894a2e62e0f5788d37997f8869e352b2ea68175122e11fc1e5b9a11
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] aaeca99a9ae2c4cd7eed1fcc0965f92e3c5084552a465d8af07e85ff33663d11
[INFO] running `Command { std: "docker" "start" "-a" "aaeca99a9ae2c4cd7eed1fcc0965f92e3c5084552a465d8af07e85ff33663d11", kill_on_drop: false }`
[INFO] [stderr]    Compiling proc-macro2 v1.0.92
[INFO] [stderr]    Compiling unicode-ident v1.0.14
[INFO] [stderr]    Compiling anstyle v1.0.10
[INFO] [stderr]    Compiling anstyle-query v1.1.2
[INFO] [stderr]    Compiling colorchoice v1.0.3
[INFO] [stderr]    Compiling anstyle-parse v0.2.6
[INFO] [stderr]    Compiling anstream v0.6.18
[INFO] [stderr]    Compiling clap_builder v4.5.23
[INFO] [stderr]    Compiling quote v1.0.37
[INFO] [stderr]    Compiling syn v2.0.90
[INFO] [stderr]    Compiling clap_derive v4.5.18
[INFO] [stderr]    Compiling clap v4.5.23
[INFO] [stderr]    Compiling lolang v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]    --> src/compiler.rs:315:14
[INFO] [stdout]     |
[INFO] [stdout] 315 |     for i in (0..compiler.local_count) {
[INFO] [stdout]     |              ^                       ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 315 -     for i in (0..compiler.local_count) {
[INFO] [stdout] 315 +     for i in 0..compiler.local_count  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::table`
[INFO] [stdout]  --> src/vm.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::table;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `can_assign`
[INFO] [stdout]    --> src/compiler.rs:327:61
[INFO] [stdout]     |
[INFO] [stdout] 327 | fn string(previous_token: Option<Token>, chunk: &mut Chunk, can_assign: bool) {
[INFO] [stdout]     |                                                             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_can_assign`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `can_assign`
[INFO] [stdout]    --> src/compiler.rs:336:61
[INFO] [stdout]     |
[INFO] [stdout] 336 | fn number(previous_token: Option<Token>, chunk: &mut Chunk, can_assign: bool) {
[INFO] [stdout]     |                                                             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_can_assign`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `can_assign`
[INFO] [stdout]    --> src/compiler.rs:351:5
[INFO] [stdout]     |
[INFO] [stdout] 351 |     can_assign: bool,
[INFO] [stdout]     |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_can_assign`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `can_assign`
[INFO] [stdout]    --> src/compiler.rs:394:5
[INFO] [stdout]     |
[INFO] [stdout] 394 |     can_assign: bool,
[INFO] [stdout]     |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_can_assign`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `can_assign`
[INFO] [stdout]    --> src/compiler.rs:414:62
[INFO] [stdout]     |
[INFO] [stdout] 414 | fn literal(previous_token: Option<Token>, chunk: &mut Chunk, can_assign: bool) {
[INFO] [stdout]     |                                                              ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_can_assign`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `can_assign`
[INFO] [stdout]    --> src/compiler.rs:429:5
[INFO] [stdout]     |
[INFO] [stdout] 429 |     can_assign: bool,
[INFO] [stdout]     |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_can_assign`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/values.rs:35:13
[INFO] [stdout]    |
[INFO] [stdout] 32 |             (Value::Str(s1), Value::Str(s2)) => {
[INFO] [stdout]    |             -------------------------------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 35 |             _ => Err(RuntimeError::UnsupportedOperation(
[INFO] [stdout]    |             ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/values.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |             (Value::Str(s1), Value::Str(s2)) => s1 == s2,
[INFO] [stdout]    |             -------------------------------- matches all the relevant values
[INFO] [stdout] 47 |             _ => false,
[INFO] [stdout]    |             ^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `prev` and `next` are never read
[INFO] [stdout]   --> src/values.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct DynamicSizeObject {
[INFO] [stdout]    |            ----------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 14 |     prev: Option<Box<DynamicSizeObject>>, // Pure heap alloc, find a way free
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 15 |     next: Option<Box<DynamicSizeObject>>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DynamicSizeObject` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 10.61s
[INFO] running `Command { std: "docker" "inspect" "aaeca99a9ae2c4cd7eed1fcc0965f92e3c5084552a465d8af07e85ff33663d11", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "aaeca99a9ae2c4cd7eed1fcc0965f92e3c5084552a465d8af07e85ff33663d11", kill_on_drop: false }`
[INFO] [stdout] aaeca99a9ae2c4cd7eed1fcc0965f92e3c5084552a465d8af07e85ff33663d11
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 12244242b48350e2f8d86b861133f67879bce04b8230c67ee522b7686a103150
[INFO] running `Command { std: "docker" "start" "-a" "12244242b48350e2f8d86b861133f67879bce04b8230c67ee522b7686a103150", kill_on_drop: false }`
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]    --> src/compiler.rs:315:14
[INFO] [stdout]     |
[INFO] [stdout] 315 |     for i in (0..compiler.local_count) {
[INFO] [stdout]     |              ^                       ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 315 -     for i in (0..compiler.local_count) {
[INFO] [stdout] 315 +     for i in 0..compiler.local_count  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::table`
[INFO] [stdout]  --> src/vm.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::table;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `can_assign`
[INFO] [stdout]    --> src/compiler.rs:327:61
[INFO] [stdout]     |
[INFO] [stdout] 327 | fn string(previous_token: Option<Token>, chunk: &mut Chunk, can_assign: bool) {
[INFO] [stdout]     |                                                             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_can_assign`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `can_assign`
[INFO] [stdout]    --> src/compiler.rs:336:61
[INFO] [stdout]     |
[INFO] [stdout] 336 | fn number(previous_token: Option<Token>, chunk: &mut Chunk, can_assign: bool) {
[INFO] [stdout]     |                                                             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_can_assign`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `can_assign`
[INFO] [stdout]    --> src/compiler.rs:351:5
[INFO] [stdout]     |
[INFO] [stdout] 351 |     can_assign: bool,
[INFO] [stdout]     |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_can_assign`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `can_assign`
[INFO] [stdout]    --> src/compiler.rs:394:5
[INFO] [stdout]     |
[INFO] [stdout] 394 |     can_assign: bool,
[INFO] [stdout]     |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_can_assign`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `can_assign`
[INFO] [stdout]    --> src/compiler.rs:414:62
[INFO] [stdout]     |
[INFO] [stdout] 414 | fn literal(previous_token: Option<Token>, chunk: &mut Chunk, can_assign: bool) {
[INFO] [stdout]     |                                                              ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_can_assign`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `can_assign`
[INFO] [stdout]    --> src/compiler.rs:429:5
[INFO] [stdout]     |
[INFO] [stdout] 429 |     can_assign: bool,
[INFO] [stdout]     |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_can_assign`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/values.rs:35:13
[INFO] [stdout]    |
[INFO] [stdout] 32 |             (Value::Str(s1), Value::Str(s2)) => {
[INFO] [stdout]    |             -------------------------------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 35 |             _ => Err(RuntimeError::UnsupportedOperation(
[INFO] [stdout]    |             ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/values.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |             (Value::Str(s1), Value::Str(s2)) => s1 == s2,
[INFO] [stdout]    |             -------------------------------- matches all the relevant values
[INFO] [stdout] 47 |             _ => false,
[INFO] [stdout]    |             ^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `prev` and `next` are never read
[INFO] [stdout]   --> src/values.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct DynamicSizeObject {
[INFO] [stdout]    |            ----------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 14 |     prev: Option<Box<DynamicSizeObject>>, // Pure heap alloc, find a way free
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 15 |     next: Option<Box<DynamicSizeObject>>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DynamicSizeObject` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]    Compiling lolang v0.1.0 (/opt/rustwide/workdir)
[INFO] [stdout] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stdout]    --> src/compiler.rs:315:14
[INFO] [stdout]     |
[INFO] [stdout] 315 |     for i in (0..compiler.local_count) {
[INFO] [stdout]     |              ^                       ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] help: remove these parentheses
[INFO] [stdout]     |
[INFO] [stdout] 315 -     for i in (0..compiler.local_count) {
[INFO] [stdout] 315 +     for i in 0..compiler.local_count  {
[INFO] [stdout]     |
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused import: `crate::table`
[INFO] [stdout]  --> src/vm.rs:4:5
[INFO] [stdout]   |
[INFO] [stdout] 4 | use crate::table;
[INFO] [stdout]   |     ^^^^^^^^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `can_assign`
[INFO] [stdout]    --> src/compiler.rs:327:61
[INFO] [stdout]     |
[INFO] [stdout] 327 | fn string(previous_token: Option<Token>, chunk: &mut Chunk, can_assign: bool) {
[INFO] [stdout]     |                                                             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_can_assign`
[INFO] [stdout]     |
[INFO] [stdout]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `can_assign`
[INFO] [stdout]    --> src/compiler.rs:336:61
[INFO] [stdout]     |
[INFO] [stdout] 336 | fn number(previous_token: Option<Token>, chunk: &mut Chunk, can_assign: bool) {
[INFO] [stdout]     |                                                             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_can_assign`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `can_assign`
[INFO] [stdout]    --> src/compiler.rs:351:5
[INFO] [stdout]     |
[INFO] [stdout] 351 |     can_assign: bool,
[INFO] [stdout]     |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_can_assign`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `can_assign`
[INFO] [stdout]    --> src/compiler.rs:394:5
[INFO] [stdout]     |
[INFO] [stdout] 394 |     can_assign: bool,
[INFO] [stdout]     |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_can_assign`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `can_assign`
[INFO] [stdout]    --> src/compiler.rs:414:62
[INFO] [stdout]     |
[INFO] [stdout] 414 | fn literal(previous_token: Option<Token>, chunk: &mut Chunk, can_assign: bool) {
[INFO] [stdout]     |                                                              ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_can_assign`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `can_assign`
[INFO] [stdout]    --> src/compiler.rs:429:5
[INFO] [stdout]     |
[INFO] [stdout] 429 |     can_assign: bool,
[INFO] [stdout]     |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_can_assign`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unused variable: `obj`
[INFO] [stdout]   --> src/parser_test.rs:12:13
[INFO] [stdout]    |
[INFO] [stdout] 12 |         let obj = parser.current.unwrap();
[INFO] [stdout]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_obj`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/values.rs:35:13
[INFO] [stdout]    |
[INFO] [stdout] 32 |             (Value::Str(s1), Value::Str(s2)) => {
[INFO] [stdout]    |             -------------------------------- matches all the relevant values
[INFO] [stdout] ...
[INFO] [stdout] 35 |             _ => Err(RuntimeError::UnsupportedOperation(
[INFO] [stdout]    |             ^ no value can reach this
[INFO] [stdout]    |
[INFO] [stdout]    = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: unreachable pattern
[INFO] [stdout]   --> src/values.rs:47:13
[INFO] [stdout]    |
[INFO] [stdout] 46 |             (Value::Str(s1), Value::Str(s2)) => s1 == s2,
[INFO] [stdout]    |             -------------------------------- matches all the relevant values
[INFO] [stdout] 47 |             _ => false,
[INFO] [stdout]    |             ^ no value can reach this
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] warning: fields `prev` and `next` are never read
[INFO] [stdout]   --> src/values.rs:14:5
[INFO] [stdout]    |
[INFO] [stdout] 11 | pub struct DynamicSizeObject {
[INFO] [stdout]    |            ----------------- fields in this struct
[INFO] [stdout] ...
[INFO] [stdout] 14 |     prev: Option<Box<DynamicSizeObject>>, // Pure heap alloc, find a way free
[INFO] [stdout]    |     ^^^^
[INFO] [stdout] 15 |     next: Option<Box<DynamicSizeObject>>,
[INFO] [stdout]    |     ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: `DynamicSizeObject` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stdout]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.98s
[INFO] running `Command { std: "docker" "inspect" "12244242b48350e2f8d86b861133f67879bce04b8230c67ee522b7686a103150", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "12244242b48350e2f8d86b861133f67879bce04b8230c67ee522b7686a103150", kill_on_drop: false }`
[INFO] [stdout] 12244242b48350e2f8d86b861133f67879bce04b8230c67ee522b7686a103150
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-7-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+1f7f8ea0721a3b1eb73e6c6d25cccb371434b320" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 96865be66c92046eac3db0e803a2b27137e5c16002a871ae1ddfc529cc318893
[INFO] running `Command { std: "docker" "start" "-a" "96865be66c92046eac3db0e803a2b27137e5c16002a871ae1ddfc529cc318893", kill_on_drop: false }`
[INFO] [stderr] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stderr]    --> src/compiler.rs:315:14
[INFO] [stderr]     |
[INFO] [stderr] 315 |     for i in (0..compiler.local_count) {
[INFO] [stderr]     |              ^                       ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 315 -     for i in (0..compiler.local_count) {
[INFO] [stderr] 315 +     for i in 0..compiler.local_count  {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: unused import: `crate::table`
[INFO] [stderr]  --> src/vm.rs:4:5
[INFO] [stderr]   |
[INFO] [stderr] 4 | use crate::table;
[INFO] [stderr]   |     ^^^^^^^^^^^^
[INFO] [stderr]   |
[INFO] [stderr]   = note: `#[warn(unused_imports)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `can_assign`
[INFO] [stderr]    --> src/compiler.rs:327:61
[INFO] [stderr]     |
[INFO] [stderr] 327 | fn string(previous_token: Option<Token>, chunk: &mut Chunk, can_assign: bool) {
[INFO] [stderr]     |                                                             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_can_assign`
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_variables)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `can_assign`
[INFO] [stderr]    --> src/compiler.rs:336:61
[INFO] [stderr]     |
[INFO] [stderr] 336 | fn number(previous_token: Option<Token>, chunk: &mut Chunk, can_assign: bool) {
[INFO] [stderr]     |                                                             ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_can_assign`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `can_assign`
[INFO] [stderr]    --> src/compiler.rs:351:5
[INFO] [stderr]     |
[INFO] [stderr] 351 |     can_assign: bool,
[INFO] [stderr]     |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_can_assign`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `can_assign`
[INFO] [stderr]    --> src/compiler.rs:394:5
[INFO] [stderr]     |
[INFO] [stderr] 394 |     can_assign: bool,
[INFO] [stderr]     |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_can_assign`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `can_assign`
[INFO] [stderr]    --> src/compiler.rs:414:62
[INFO] [stderr]     |
[INFO] [stderr] 414 | fn literal(previous_token: Option<Token>, chunk: &mut Chunk, can_assign: bool) {
[INFO] [stderr]     |                                                              ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_can_assign`
[INFO] [stderr] 
[INFO] [stderr] warning: unused variable: `can_assign`
[INFO] [stderr]    --> src/compiler.rs:429:5
[INFO] [stderr]     |
[INFO] [stderr] 429 |     can_assign: bool,
[INFO] [stderr]     |     ^^^^^^^^^^ help: if this is intentional, prefix it with an underscore: `_can_assign`
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]   --> src/values.rs:35:13
[INFO] [stderr]    |
[INFO] [stderr] 32 |             (Value::Str(s1), Value::Str(s2)) => {
[INFO] [stderr]    |             -------------------------------- matches all the relevant values
[INFO] [stderr] ...
[INFO] [stderr] 35 |             _ => Err(RuntimeError::UnsupportedOperation(
[INFO] [stderr]    |             ^ no value can reach this
[INFO] [stderr]    |
[INFO] [stderr]    = note: `#[warn(unreachable_patterns)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: unreachable pattern
[INFO] [stderr]   --> src/values.rs:47:13
[INFO] [stderr]    |
[INFO] [stderr] 46 |             (Value::Str(s1), Value::Str(s2)) => s1 == s2,
[INFO] [stderr]    |             -------------------------------- matches all the relevant values
[INFO] [stderr] 47 |             _ => false,
[INFO] [stderr]    |             ^ no value can reach this
[INFO] [stderr] 
[INFO] [stderr] warning: fields `prev` and `next` are never read
[INFO] [stderr]   --> src/values.rs:14:5
[INFO] [stderr]    |
[INFO] [stderr] 11 | pub struct DynamicSizeObject {
[INFO] [stderr]    |            ----------------- fields in this struct
[INFO] [stderr] ...
[INFO] [stderr] 14 |     prev: Option<Box<DynamicSizeObject>>, // Pure heap alloc, find a way free
[INFO] [stderr]    |     ^^^^
[INFO] [stderr] 15 |     next: Option<Box<DynamicSizeObject>>,
[INFO] [stderr]    |     ^^^^
[INFO] [stderr]    |
[INFO] [stderr]    = note: `DynamicSizeObject` has derived impls for the traits `Debug` and `Clone`, but these are intentionally ignored during dead code analysis
[INFO] [stderr]    = note: `#[warn(dead_code)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] 
[INFO] [stderr] warning: `lolang` (lib) generated 11 warnings (run `cargo fix --lib -p lolang` to apply 8 suggestions)
[INFO] [stderr] warning: unused variable: `obj`
[INFO] [stderr]   --> src/parser_test.rs:12:13
[INFO] [stderr]    |
[INFO] [stderr] 12 |         let obj = parser.current.unwrap();
[INFO] [stderr]    |             ^^^ help: if this is intentional, prefix it with an underscore: `_obj`
[INFO] [stderr] 
[INFO] [stderr] warning: `lolang` (lib test) generated 12 warnings (11 duplicates) (run `cargo fix --lib -p lolang --tests` to apply 1 suggestion)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.07s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/lolang-c4c32909d5077e36)
[INFO] [stdout] 
[INFO] [stdout] running 25 tests
[INFO] [stdout] test compiler_test::test::numeric_expression ... ok
[INFO] [stdout] test parser_test::test::parse_string ... ok
[INFO] [stdout] test compiler_test::test::var_declaration ... ok
[INFO] [stdout] test scanner_test::test::scan_equal ... ok
[INFO] [stdout] test scanner_test::test::scan_leftbrace ... ok
[INFO] [stdout] test scanner_test::test::scan_leftparen ... ok
[INFO] [stdout] test scanner_test::test::scan_less ... ok
[INFO] [stdout] test scanner_test::test::scan_lessequal ... ok
[INFO] [stdout] test scanner_test::test::scan_equalequal ... ok
[INFO] [stdout] test scanner_test::test::scan_minus ... ok
[INFO] [stdout] test scanner_test::test::scan_bangequal ... ok
[INFO] [stdout] test scanner_test::test::scan_comma ... ok
[INFO] [stdout] test scanner_test::test::scan_plus ... ok
[INFO] [stdout] test scanner_test::test::scan_rightbrace ... ok
[INFO] [stdout] test scanner_test::test::scan_rightparen ... ok
[INFO] [stdout] test scanner_test::test::scan_semicolon ... ok
[INFO] [stdout] test scanner_test::test::scan_slash ... ok
[INFO] [stdout] test scanner_test::test::scan_string ... ok
[INFO] [stdout] test scanner_test::test::scan_string_error ... ok
[INFO] [stdout] test scanner_test::test::scan_greater ... ok
[INFO] [stdout] test scanner_test::test::scan_greaterequal ... ok
[INFO] [stdout] test scanner_test::test::scan_bang ... ok
[INFO] [stdout] test scanner_test::test::scan_number ... ok
[INFO] [stdout] test scanner_test::test::scan_dot ... ok
[INFO] [stdout] test scanner_test::test::scan_star ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 25 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.02s
[INFO] [stdout] 
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/lolang-38db3cebd5e52fb4)
[INFO] [stderr]      Running tests/integration_tests.rs (/opt/rustwide/target/debug/deps/integration_tests-8fa2738ff0173504)
[INFO] [stdout] 
[INFO] [stderr]    Doc-tests lolang
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr] warning: unnecessary parentheses around `for` iterator expression
[INFO] [stderr]    --> src/compiler.rs:315:14
[INFO] [stderr]     |
[INFO] [stderr] 315 |     for i in (0..compiler.local_count) {
[INFO] [stderr]     |              ^                       ^
[INFO] [stderr]     |
[INFO] [stderr]     = note: `#[warn(unused_parens)]` (part of `#[warn(unused)]`) on by default
[INFO] [stderr] help: remove these parentheses
[INFO] [stderr]     |
[INFO] [stderr] 315 -     for i in (0..compiler.local_count) {
[INFO] [stderr] 315 +     for i in 0..compiler.local_count  {
[INFO] [stderr]     |
[INFO] [stderr] 
[INFO] [stderr] warning: 1 warning emitted
[INFO] [stderr] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "96865be66c92046eac3db0e803a2b27137e5c16002a871ae1ddfc529cc318893", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "96865be66c92046eac3db0e803a2b27137e5c16002a871ae1ddfc529cc318893", kill_on_drop: false }`
[INFO] [stdout] 96865be66c92046eac3db0e803a2b27137e5c16002a871ae1ddfc529cc318893
